package com.uenpay.im.configuration;

import com.uenpay.im.IMApplication;
import com.uenpay.util.common.AppConfig;

import java.text.MessageFormat;

/**
 * 网络地址
 *
 * @author SL
 * @copyRight http://www.qiyunxin.com
 */
public class APIConfiguration {

    public static String getApiRootUrl() {
        return getBaseUrl() + "_token=" + IMApplication.getAccessToken() + "&_custid=" + IMApplication.getCustId() + "&";
    }

    /**
     * @return 用户custId & token
     */
    public static String getCustIdAndToken() {
        return "_token=" + IMApplication.getAccessToken() + "&_custid=" + IMApplication.getCustId();
    }

    public static String getBaseUrl() {
        String url = IMApplication.config.getBaseApiUrl();
        return url;
        // return "http://api2.qiyunxin.com/";
    }

    /**
     * 获取菜单分类基地址
     *
     * @return
     */
    public static String getMenuBaseUrl() {
        return "http://menusapi.qiyunxin.com/";
    }

    public static String getServiceBaseUrl() {
        return AppConfig.IS_RELEASE?"http://userservices.uenpay.com/v1/":"http://wuserservices.uenpay.com/v1/";
    }

    public static String getSmsBaseUrl() {
        return AppConfig.IS_RELEASE ? "http://smsapi.uenpay.com/v1/" : "http://wsmsapi.uenpay.com/v1/";
    }

    /**
     * 获取用户加好友二维码基地址
     *
     * @return
     */
    public static String getQrCodeUrl() {
        return "http://api2.qiyunxin.com/";
    }

    /**
     * 付款码收款码二维码基地址
     *
     * @return
     */
    public static String getUenQrCodeUrl() {
        return "http://im.uenpay.com/";
    }

    /**
     * 收款码二维码标识
     *
     * @return
     */
    public static String getPayCodeFlag() {
        return "PayCode#";
    }

    /**
     * 支付基地址
     *
     * @return
     */
    public static String getPayUrl() {
        return AppConfig.IS_RELEASE ? "http://payv2api.uenpay.com/v1/" : "http://wpayv2api.uenpay.com/v1/";
    }

    /**
     * 文件下载地址
     *
     * @param file_id
     * @param file_hash
     * @return
     */
    public static String getFileDownloadPath(String file_id, String file_hash) {
        return MessageFormat.format(getFileDownloadPath(), file_id, file_hash);
    }

    public static String getFileDownloadPath() {
        return getBaseUrl() + "Communal/Communal/getFile?fileid={0}&filehash={1}";
    }

    public static String getFileDownloadBySize(String file_id, String file_hash, int w, int h) {
        return MessageFormat.format(getBaseUrl() + "Communal/Communal/getFile?fileid={0}&filehash={1}&w=" + w + "&h=" + h + "", file_id,
                file_hash);
    }

    public static String getFileSmallDownloadPath(String file_id, String file_hash) {
        return MessageFormat.format(getBaseUrl() + "Communal/Communal/getFile?fileid={0}&filehash={1}&w=128&h=128", file_id, file_hash);
    }

    /**
     * 默认头像地址 (128x128)
     *
     * @param cust_id 用户di
     * @param type    1：个人2：群
     */
    public static String getAvatarUrlNormal(String cust_id, int type) {
        return getBaseUrl() + "Communal/Communal/avatar?id=" + cust_id + "&w=128&h=128&type=" + type;
    }

    /**
     * 大图头像地址
     *
     * @param cust_id 用户id
     * @param type    1：个人2：群
     */
    public static String getAvatarUrlBig(String cust_id, int type) {
        return getBaseUrl() + "Communal/Communal/avatar?id=" + cust_id + "&type=" + type;
    }

    /**
     * @param cust_id 用户di
     * @param type    1：个人2：群
     */
    public static String getAvatarUrlBySize(String cust_id, int type, int width, int height) {
        return getBaseUrl() + "Communal/Communal/avatar?id=" + cust_id + "&w=" + width + "&h=" + height + "&type=" + type;
    }

}
